Overview
HPC Desktop provides a desktop-based HPC workspace that allows users to access a graphical environment and run command-line operations in a desktop session. It is useful for interactive workflows, visualization, and terminal-based job submission.
Procedure
Submitting the Job
- Go to EonKube > Apps > Marketplace.
- Open the HPC Desktop application page.
- Click Submit.
- Configure the required settings, including:
- Basic Settings
- Project: Select a Project from the drop-down menu
- Job Name: HPC-desktop-job
- App Version: Choose the version such as v2.7.1
- MPI: Enable if MPI execution is required
- Resource Configuration:
Configure control node and compute node resources according to workload requirements.
Example configuration:- Control Node
- CPU: 2 Cores
- Memory: 2 GiB.
- GPU: 1 GPU
- Compute Node
- CPU: 6 Cores.
- Memory: 8 GiB.
- GPU: 1 GPU.
- Node: 2 Nodes
- Control Node
- Basic Settings
- Click on Create to submit the job.
Accessing the Desktop Session
- Go to EonKube > HPC > Volcano Jobs.
- Locate the HPC Desktop job.
- Click the Console button.
- Select Open in Web VNC.
- When the desktop page opens, select noVNC Full Client if required.
- Click Connect.
- Enter your login credentials and sign in.
Running Jobs from the Terminal
- Open a terminal window in the desktop environment.
- Prepare a job definition file, such as a Volcano Job YAML file (e.g., sample yaml as below)
apiVersion: batch.volcano.sh/v1alpha1 kind: Job metadata: name: normal-job spec: maxRetry: 3 minAvailable: 1 queue: default schedulerName: volcano tasks: - maxRetry: 3 minAvailable: 1 name: default0 replicas: 1 template: metadata: labels: job.volcano.sh: job-1 name: job-1 spec: containers: - image: busybox imagePullPolicy: IfNotPresent name: job-1 command: ["sleep"] args: ["3600"] - Submit the job by using the required command-line tool.
Example:vcctl job create -f volcano-job.yaml
Reviewing Results
After the job is submitted, verify that the expected flex volumes are attached correctly.
Review the generated job resources, output bindings, or related files according to the configured workflow.
- Confirm that the job binds the required flex volumes:
- homevol
- appvol
- etcvol
- Run the following command to review the job definition:
kubectl get vcjob normal-job -o yaml
- Verify that the output includes the expected volume entries.
Example:volumes: - flexVolume: driver: hpc/volumebind options: jobid: "882" key:ZQ=G9tQvSlc3LXRzA1MvdocGYS9i9wI4QCRjZS9mFnRvc4c3L2VXJzluZ0YWb25i9jtlcvY2L2RGliIvb2YXcy92VzFjYvdGcm9yODg> source:/var/lib/docker/containers/exstorage/BF28B/pa/hpc/w05-test/Home name: homevol - flexVolume: driver: hpc/volumebind options: jobid: "882" key:25zRpbjYXbGlXBwQvQlc3LXRzA1MvdocGYS9i9wI4QCRjZS9mFnRvc4c3L2VXJzluZ0YWb25i9jtlcvY2L2RGliIvb2YXcy92VzFjYvdGcm9yODg source:/var/lib/docker/containers/exstorage/BF28B/pa/hpc/w05-test/Applications - flexVolume: driver: hpc/volumebind options: jobid: "882" key:9ldlbSc3RnN5QvLlc3LXRzA1MvdocGYS9i9wI4QCRjZS9mFnRvc4c3L2VXJzluZ0YWb25i9jtlcvY2L2RGliIvb2YXcy92VzFjYvdGcm9yODg source:/var/lib/docker/containers/exstorage/BF28B/pa/hpc/w05-test/.system/etc name: etcvol